// 导入mysql模块
const mysql = require('mysql')
// 2. 建立与数据库之间的连接
const db =  mysql.createPool({
    host: '127.0.0.1',
    user: 'root',   // 登录数据库的账号
    password: 'admin123',  // 登录数据库的密码
    database: 'my_db01'  // 指定操作的数据库名称
})

// 测试mysql模块能否正常工作
// db.query('SELECT 1', (err, results) => {
//     if(err) return console.log(err.message);
//     // 能够成功的执行SQL语句
//     console.log(results)
// })

//查询 users表中的所有数据
// const sqlstr = 'SELECT * FROM users';
// db.query(sqlstr, (err, results) => {
//   // 查询数据失败
//   if(err) return console.log(err.message);

//   // 查询数据成功
//   console.log(results);
// });

// // 向users表中新增数据 username 为 spider-man  password为pcc123
// const user = {username: 'Spider-man', password: 'pcc123'};
// // 执行 sql 语句
// const sqlStr = 'INSERT INTO users (username, password) VALUES (?,?)';
// // 执行 sql语句
// db.query(sqlStr, [user.username, user.password], (err, results) => {
//     if(err) return console.log(err.message);

//     // 成功了   注意： 如果执行的是insert INTO 插入语句，则results是一个对象,
//     // 可以通过 affectedRows 属性， 来判断是否插入数据成功
//     if(results.affectedRows === 1) { console.log('插入数据成功') };
// })



// 演示插入数据的便捷插入
// const user = {username: 'Spider-man2', password: 'pcc4321'};
// // 定义待执行的SQL语句  
// const sqlStr = 'INSERT INTO users SET ?';
// // 执行sql语句
// db.query(sqlStr, user, (err, results) => {
//     if(err) return console.log(err.message);
//     if(results.affectedRows ===1 ) {console.log('插入数据成功')}
// });


// 演示如何更新用户的信息 
// const user = {id: 6, username: 'aaaa', password: '4321'};
// // 定义sql语句, ?是作为占位符进行使用的
// const sqlStr = 'UPDATE users SET username=?, password=? WHERE id=?';
// // 执行sql语句
// db.query(sqlStr, [user.username, user.password, user.id], (err, results) => {
//     if(err) return console.log(err.message);
//     //  注意 执行了update之后返回的也是对象
//     if(results.affectedRows === 1) {
//         console.log('更新成功了');
//     }
// })

// 演示更新数据的便捷方式
// const user = { id: 6, username: 'aaaaaa', password: '00000000' };
// // 2. 定义一个sql语句
// const sqlStr = 'UPDATE users SET ? WHERE id=?';
// db.query(sqlStr, [user, user.id], (err, results) => {
//     if(err) return console.log(err.message);
//     if(results.affectedRows === 1) { console.log('更新数据陈工') };
// })

// 删除id 为5的数据
// const sqlstr = 'DELETE FROM users WHERE id=?';
// db.query(sqlstr, 5, (err, results) => {
//     if(err) return console.log(err.message);
//     //** 注意，执行了delete语句之后，结果也是一个对象，也会包含affectedRows 属性 */
//     if(results.affectedRows === 1) {
//         console.log('删除数据成功');
//     }
// });

// 标记删除
const sqlStr = 'UPDATE users SET status=? WHERE id=?';
db.query(sqlStr, [1, 6], (err, results) => {
    if(err) return console.log(err.message);
    if(results.affectedRows === 1) {
        console.log('标记删除成功');
    }
})